FUNCIONARIOS = {
	init : function() {
		if (jQuery(".index").length > 0) {
			FUNCIONARIOS.filter();
			FUNCIONARIOS.order();
		}

		FUNCIONARIOS.carregarImagem();
		FUNCIONARIOS.carregarGrupoEregra();
		FUNCIONARIOS.gerarRelatorio();
		FUNCIONARIOS.nextTab();
	},

	filter : function() {
		var checkBoxAtivos = jQuery("#apenas_ativos");

		setTimeout(function(){
		  FUNCIONARIOS.carregarEventosFiltroAtivo();
		}, 150);

		checkBoxAtivos.bind("change", function (){
			var inputSearch = jQuery("DIV.dataTables_filter input[type='text']:first");

			if (checkBoxAtivos.is(":checked")){
				var searchValue = inputSearch.val();
				var checkboxValue = checkBoxAtivos.val();

				if (searchValue == "") {
					inputSearch.val(checkboxValue);
				} else {
					inputSearch.val(checkboxValue + " " + searchValue);
				}

				inputSearch.keyup();
				inputSearch.val(searchValue);
			} else {
				var checkboxValue = checkBoxAtivos.val();
				var searchValue = inputSearch.val();

				searchValue = searchValue.replace(checkboxValue,"");

				inputSearch.val(searchValue);
				inputSearch.keyup();
			}
		});

		jQuery("body").delegate("input", "input keyup", function (event) {
			if (event.originalEvent) {
				FUNCIONARIOS.carregarEventosFiltroAtivo();
			}
		});
	},

	order : function() {
		setTimeout(function(){
			jQuery(".stdtable thead th.name").click();
		}, 150);
	},
	
	carregarEventosFiltroAtivo : function() {
		var inputSearch = jQuery("DIV.dataTables_filter input[type='text']:first");
		var checkBoxAtivos = jQuery("#apenas_ativos");

		if (checkBoxAtivos.is(":checked")){
			var searchValue = inputSearch.val();
			var checkboxValue = checkBoxAtivos.val();

			if (searchValue == "") {
				inputSearch.val(checkboxValue);
			} else {
				inputSearch.val(checkboxValue + " " + searchValue);
			}

			inputSearch.keyup();
			inputSearch.val(searchValue);
		} else {
			var checkboxValue = checkBoxAtivos.val();
			var searchValue = inputSearch.val();

			searchValue = searchValue.replace(checkboxValue,"");

			inputSearch.val(searchValue);
			inputSearch.keyup();
		}
	},
	
	carregarImagem : function() {
		jQuery('select[id*="FuncionarioId"]:first').bind("change", function(){
			var funcionarioId = jQuery(this).val();

			if (!(funcionarioId === "")) {
				jQuery.ajax({
					async:true, 
					data: {"funcionario_id": funcionarioId},
					dataType:"html", 
					success: function (data, textStatus) {
						data = "<a>" + data + "</a>";
						jQuery("DIV.photocontent").html(data);
					},
					type:"get", 
					url:"/projeto-fs-grupo-aehv/funcionarios/getImage"
				});
			} else {
				jQuery("DIV.photocontent").html('<a><img src="/projeto-fs-grupo-aehv/img/photo_default.gif" height="100px"></a>');
			}
		});
	},

	carregarGrupoEregra : function() {
		jQuery("#FuncionarioGrupoId").bind("change", function(){
			var grupoId = jQuery(this).val();
			if (!(grupoId === "")) {
				jQuery.ajax({
					async:true, 
					data: {"grupo_id": grupoId}, 
					success: function (data, textStatus) {
						if (data && !(data === "")) {
                            var regra = jQuery.parseJSON(data);

							jQuery("span.regra-nome").html(regra.Regra.nome);

                            jQuery("span.regra-dias-permancencia").html(regra.Regra.dias_permanencia);
                            jQuery("span.regra-dias-ferias").html(regra.Regra.dias_ferias);
                            jQuery("span.regra-bonus").html(regra.Regra.qtd_viagens_bonus);
						}
					},
					type:"get", 
					url:"/projeto-fs-grupo-aehv/grupos/getGrupo"
				});
			} else {
                jQuery("span.regra-nome").html("&nbsp;");
				jQuery("span.regra-data").html("&nbsp;");
				jQuery("span.regra-dias-permancencia").html("&nbsp;");
				jQuery("span.regra-dias-ferias").html("&nbsp;");
				jQuery("span.regra-bonus").html("&nbsp;");
			}
		});
	},

	gerarRelatorio: function() {
		jQuery("a.gerar-relatorio-funcionario").bind('click', function(event) {
			event.preventDefault();

			var form = jQuery("form#FuncionarioGerarRelatorioForm");
			var inputSearch = jQuery("#FuncionarioSearch");

			var ids = []
			jQuery("a.id").each(function(){
				ids.push(jQuery(this).text());
			});

			inputSearch.val(ids);

			form.submit();
		});
	},

	nextTab: function() {
		jQuery(".ds_next").click().bind('click', function(event) {
			var href = jQuery(this).data('next-tab');
			jQuery('a[href$="'+ href +'"]').click();
		});
	}
}


jQuery(document).ready(function($) {
	FUNCIONARIOS.init();
});

